package com.ruoyi.central.service;

import java.util.List;
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
import com.ruoyi.common.core.service.IService;
import com.ruoyi.central.domain.TopCentralOperationStationMaterial;

import javax.validation.constraints.NotNull;

/**
 * 操作站点-物料Service接口
 *
 * @author SunLuQuan
 * @date 2022-04-25
 */
public interface ITopCentralOperationStationMaterialService extends IService<TopCentralOperationStationMaterial>
{
    /**
     * 查询操作站点-物料
     * 
     * @param id 操作站点-物料主键
     * @param columns 查询指定的列
     * @return 操作站点-物料
     */
    public TopCentralOperationStationMaterial selectById(Integer id, SFunction<TopCentralOperationStationMaterial,?> ... columns);

    /**
     * 查询操作站点-物料列表
     *
     * @param topCentralOperationStationMaterial 操作站点-物料
     * @return 操作站点-物料集合
     */
    public List<TopCentralOperationStationMaterial> selectList( TopCentralOperationStationMaterial topCentralOperationStationMaterial);

    /**
     * 查询操作站点-物料 根据操作站位编号
     * @param operationStationId 操作站位编号
     * @return 返回分组的 操作站点-物料对象 结合
     */
    public TopCentralOperationStationMaterial selectByOperationStationId(@NotNull Integer operationStationId);

    /**
     * 查询操作站点-物料 根据物料编号
     * @param materialId 物料编号
     * @return 返回分组的 操作站点-物料对象 结合
     */
    public TopCentralOperationStationMaterial selectByMaterialId(@NotNull String materialId);
}
